package com.vhall.component.controller.rebroadcast;

import com.alibaba.fastjson.JSONObject;
import com.vhall.component.entity.rebroadcast.vo.ListReqVo;
import com.vhall.component.entity.rebroadcast.vo.PreviewReqVo;
import com.vhall.component.entity.rebroadcast.vo.PreviewRspVo;
import com.vhall.component.entity.rebroadcast.vo.StartReqVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;

import java.util.Map;

/**
 * @author xianglei
 * @date 2021/6/16 10:52
 */

@FeignClient(value = "RebroadCastFacade", path = "/v4/rebroadcast")
public interface RebroadCastFacade {
    /**
     * 转播开始
     *
     * @param reqVO
     * @return
     */
    @PostMapping("/start")
    Boolean start(@Validated StartReqVo reqVO);

    /**
     * 转播结束
     *
     * @param reqVO
     * @return
     */
    @PostMapping("/stop")
    JSONObject stop(@Validated StartReqVo reqVO);

    /**
     * 转播列表
     *
     * @param reqVO
     * @return
     */
    @PostMapping("/lists")
    Map<String, Object> lists(@Validated ListReqVo reqVO);

    /**
     * 转播预览
     *
     * @param reqVO
     * @return
     */
    @PostMapping("/preview")
    PreviewRspVo preview(@Validated PreviewReqVo reqVO);
}

